home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Personal Computer World 2005 October
/
PCWOCT05.iso
/
Software
/
FromTheMag
/
Syn Text Editor 2.1.0.46
/
synsetup-2.1.0.46.exe
/
{app}
/
scripts
/
cs-rcs.vbs
< prev
next >
Wrap
Text File
|
2003-08-13
|
5KB
|
158 lines
'
' syn
' Copyright (C) 2000-2003, Ascher Stefan. All rights reserved.
' stievie@utanet.at, http://web.utanet.at/ascherst/
'
' The contents of this file are subject to the Mozilla Public License
' Version 1.1 (the "License"); you may not use this file except in compliance
' with the License. You may obtain a copy of the License at
' http://www.mozilla.org/MPL/
'
' Software distributed under the License is distributed on an "AS IS" basis,
' WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
' the specific language governing rights and limitations under the License.
'
' The Original Code is cs-rcs.vbs, released Sun, 26 May 2002 10:55:39 UTC.
'
' The Initial Developer of the Original Code is Ascher Stefan.
' Portions created by Ascher Stefan are Copyright (C) 2000-2003 Ascher Stefan.
' All Rights Reserved.
'
' Contributor(s): .
'
' Alternatively, the contents of this file may be used under the terms of the
' GNU General Public License Version 2 or later (the "GPL"), in which case
' the provisions of the GPL are applicable instead of those above.
' If you wish to allow use of your version of this file only under the terms
' of the GPL and not to allow others to use your version of this file
' under the MPL, indicate your decision by deleting the provisions above and
' replace them with the notice and other provisions required by the GPL.
' If you do not delete the provisions above, a recipient may use your version
' of this file under either the MPL or the GPL.
'
' You may retrieve the latest version of this file at the syn home page,
' located at http://syn.sourceforge.net/
'
' $Id: cs-rcs.vbs,v 1.2.2.5 2003/08/13 00:38:45 neum Exp $
' Version 2.2
' Script to call ComponentSoftware's RCS, if you're not using this implementation
' from RCS, you may want to access it via the commandline.
' usage: cs-rcs.vbs <dowhat> [filename]
' dowhat can be:
' -status
' -history
' -checkout
' -checkin
' -explorer
' -compare
' usage with syn:
' - Make a new Tool enter:
' - Program : wscript.exe
' - Arguments : "cs-rcs.vbs" <dowhat> "$[ActiveDocLong]"
' - Workingdirectory : something, or leave it blank
' - Capture Console : cleared
option explicit
dim sDoWhat
dim sFileName
dim objFs
if WScript.Arguments.Count < 1 then
MsgBox "To few Arguments." & vbCrLf & "usage: cs-rcs.vbs <dowhat> [filename]", 16, "RCS"
WScript.Quit
end if
sDoWhat = LCase(WScript.Arguments(0)) ' make the arguments case insesitive
if WScript.Arguments.Count > 1 then
sFileName = WScript.Arguments(1)
set objFs = WScript.CreateObject("Scripting.FileSystemObject")
if not objFs.FileExists(sFileName) then
MsgBox "File '" & sFileName & "' does not exist.", 16, "RCS"
WScript.Quit
end if
end if
select case sDoWhat
case "-status"
RcsStatus
case "-history"
RcsHistory
case "-checkout"
RcsCheckOut
case "-checkin"
RcsCheckIn
case "-explorer"
RcsExplorer
case "-compare"
RcsCompare
case else
MsgBox "Unknown directive: '" & sDoWhat & "'.", 16, "RCS"
WScript.Quit
end select
sub RcsStatus()
dim rcsapp
set rcsapp = CreateObject("Csrcssrv.Application")
rcsapp.StatusEx sFileName, false
end sub
sub RcsHistory()
dim rcsapp
set rcsapp = CreateObject("Csrcssrv.Application")
rcsapp.History sFileName
end sub
sub RcsCheckOut()
dim rcsapp
Set rcsapp = CreateObject("Csrcssrv.Application")
rcsapp.CheckOut sFileName
end sub
sub RcsCheckIn()
dim rcsapp
set rcsapp = CreateObject("Csrcssrv.Application")
if rcsapp.GetRCSState(sFileName) = 0 then
rcsapp.AddToRcs sFileName
else
rcsapp.CheckIn sFileName
end if
end sub
sub RcsExplorer()
dim rcsapp
set rcsapp = CreateObject("Csrcssrv.Application")
rcsapp.PrjExplorer ""
end sub
sub RcsCompare()
dim fName
dim rcsapp
dim objShell
set rcsapp = CreateObject("Csrcssrv.Application")
fName = rcsapp.GetHeadRevision(sFileName)
set rcsapp = nothing
' The Diff Tool to compare the two files, you may also use the Tool shipped with CS-RCS (CSDiff.exe)
const DiffExe = "D:\Eigene Dateien\Delphi Projekte\TextDiff\TextDiff.exe"
if fName <> "" and sFileName <> "" then
' Now run a Diff Tool like WinDiff, I use TextDiff (http://rpi.net.au/~ajohnson/delphi/)
set objShell = WScript.CreateObject("WScript.Shell")
if objShell.Run(AddQuotes(DiffExe) & " " & AddQuotes(fName) & " " & AddQuotes(sFileName), 1, false) <> 0 then
MsgBox "Can not start " & DiffExe, 16, "RCS"
end if
end if
end sub
function AddQuotes(s)
AddQuotes = Chr(34) & s & Chr(34)
end function